package com.ruoyi.report_gc.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.report_gc.domain.vo.GcjxljjtbgBsInfoVo;
import com.ruoyi.report_tg.domain.bo.ExcelGeneralBo;
import com.ruoyi.report_tg.domain.vo.TgsybgBaDetailVo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;
import java.util.List;
import java.util.Map;

import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 钢材机械连接接头试验检测报告业务对象 report_gc_gcjxljjtbg_bs_info
 *
 * @author llb
 * @date 2024-06-18
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class GcjxljjtbgBsInfoBo extends ExcelGeneralBo {

    /**
     * 一份excel表格的唯一id(其他的excel主表，都应有此字段）
     */
    @NotNull(message = "一份excel表格的唯一id(其他的excel主表，都应有此字段）不能为空", groups = { EditGroup.class })
    private Long excelId;

    /**
     * 共几页
     */
    @NotNull(message = "共几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long totalPage;

    /**
     * 第几页
     */
    @NotNull(message = "第几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long page;

    /**
     * 检测单位名称
     */
    @NotBlank(message = "检测单位名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancdwmc;

    /**
     * 报告编号
     */
    @NotBlank(message = "报告编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String baogbh;

    /**
     * 施工/委托单位
     */
    @NotBlank(message = "施工/委托单位不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shigwtdw;

    /**
     * 工程名称
     */
    @NotBlank(message = "工程名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcmc;

    /**
     * 工程部位/用途
     */
    @NotBlank(message = "工程部位/用途不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcbwyt;

    /**
     * 样品名称
     */
    @NotBlank(message = "样品名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpmc;

    /**
     * 样品编号
     */
    @NotBlank(message = "样品编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpbh;

    /**
     * 样品数量
     */
    @NotBlank(message = "样品数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsl;

    /**
     * 样品状态
     */
    @NotBlank(message = "样品状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpzt;

    /**
     * 样品时间
     */
    @NotBlank(message = "样品时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsj;

    /**
     * 检测依据
     */
    @NotBlank(message = "检测依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancyj;

    /**
     * 判定依据
     */
    @NotBlank(message = "判定依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pandyj;

    /**
     * 主要仪器设备名称及编号
     */
    @NotBlank(message = "主要仪器设备名称及编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String zhuyyqsbmcjbh;

    /**
     * 生产厂家
     */
    @NotBlank(message = "生产厂家不能为空", groups = { AddGroup.class, EditGroup.class })
    private String cd;

    /**
     * 代表数量
     */
    @NotBlank(message = "代表数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private String daibsl;

    /**
     * 进场时间
     */
    @NotBlank(message = "进场时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jincrq;

    /**
     * 批号
     */
    @NotBlank(message = "批号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pih;

    /**
     * 钢筋强度等级牌号
     */
    @NotBlank(message = "钢筋强度等级牌号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gangjqddjph;

    /**
     * 连接形式
     */
    @NotBlank(message = "连接形式不能为空", groups = { AddGroup.class, EditGroup.class })
    private String lianjxs;

    /**
     * 试件编号1
     */
    @NotBlank(message = "试件编号1不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shijbh1;

    /**
     * 钢筋直径1(mm)
     */
    @NotBlank(message = "钢筋直径1(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String zhij1;

    /**
     * 钢筋截面积1(mm²)
     */
    @NotBlank(message = "钢筋截面积1(mm²)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiemj1;

    /**
     * 连接件抗拉荷载实测值1(kN)
     */
    @NotBlank(message = "连接件抗拉荷载实测值1(kN)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiszb1;

    /**
     * 连接件抗拉强度实测值1(MPa)
     */
    @NotBlank(message = "连接件抗拉强度实测值1(MPa)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String qiangdscz1;

    /**
     * 断裂特征1
     */
    @NotBlank(message = "断裂特征1不能为空", groups = { AddGroup.class, EditGroup.class })
    private String daunltz1;

    /**
     * 断裂位置1(mm)
     */
    @NotBlank(message = "断裂位置1(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String duanlwz1;

    /**
     * 结果判定1
     */
    @NotBlank(message = "结果判定1不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiegpd1;

    /**
     * 试件编号2
     */
    @NotBlank(message = "试件编号2不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shijbh2;

    /**
     * 连接件抗拉荷载实测值2(kN)
     */
    @NotBlank(message = "连接件抗拉荷载实测值2(kN)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiszb2;

    /**
     * 连接件抗拉强度实测值2(MPa)
     */
    @NotBlank(message = "连接件抗拉强度实测值2(MPa)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String qiangdscz2;

    /**
     * 断裂特征2
     */
    @NotBlank(message = "断裂特征2不能为空", groups = { AddGroup.class, EditGroup.class })
    private String daunltz2;

    /**
     * 断裂位置2(mm)
     */
    @NotBlank(message = "断裂位置2(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String duanlwz2;

    /**
     * 结果判定2
     */
    @NotBlank(message = "结果判定2不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiegpd2;

    /**
     * 试件编号3
     */
    @NotBlank(message = "试件编号3不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shijbh3;

    /**
     * 连接件抗拉荷载实测值3(kN)
     */
    @NotBlank(message = "连接件抗拉荷载实测值3(kN)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiszb3;

    /**
     * 连接件抗拉强度实测值3(MPa)
     */
    @NotBlank(message = "连接件抗拉强度实测值3(MPa)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String qiangdscz3;

    /**
     * 断裂特征3
     */
    @NotBlank(message = "断裂特征3不能为空", groups = { AddGroup.class, EditGroup.class })
    private String daunltz3;

    /**
     * 断裂位置3(mm)
     */
    @NotBlank(message = "断裂位置3(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String duanlwz3;

    /**
     * 结果判定3
     */
    @NotBlank(message = "结果判定3不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiegpd3;

    /**
     * 试件编号4
     */
    @NotBlank(message = "试件编号4不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shijbh4;

    /**
     * 钢筋直径4(mm)
     */
    @NotBlank(message = "钢筋直径4(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String zhij4;

    /**
     * 钢筋截面积4(mm²)
     */
    @NotBlank(message = "钢筋截面积4(mm²)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiemj4;

    /**
     * 连接件抗拉荷载实测值4(kN)
     */
    @NotBlank(message = "连接件抗拉荷载实测值4(kN)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiszb4;

    /**
     * 连接件抗拉强度实测值4(MPa)
     */
    @NotBlank(message = "连接件抗拉强度实测值4(MPa)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String qiangdscz4;

    /**
     * 断裂特征4
     */
    @NotBlank(message = "断裂特征4不能为空", groups = { AddGroup.class, EditGroup.class })
    private String daunltz4;

    /**
     * 断裂位置4(mm)
     */
    @NotBlank(message = "断裂位置4(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String duanlwz4;

    /**
     * 结果判定4
     */
    @NotBlank(message = "结果判定4不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiegpd4;

    /**
     * 试件编号5
     */
    @NotBlank(message = "试件编号5不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shijbh5;

    /**
     * 连接件抗拉荷载实测值5(kN)
     */
    @NotBlank(message = "连接件抗拉荷载实测值5(kN)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiszb5;

    /**
     * 连接件抗拉强度实测值5(MPa)
     */
    @NotBlank(message = "连接件抗拉强度实测值5(MPa)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String qiangdscz5;

    /**
     * 断裂特征5
     */
    @NotBlank(message = "断裂特征5不能为空", groups = { AddGroup.class, EditGroup.class })
    private String daunltz5;

    /**
     * 断裂位置5(mm)
     */
    @NotBlank(message = "断裂位置5(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String duanlwz5;

    /**
     * 结果判定5
     */
    @NotBlank(message = "结果判定5不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiegpd5;

    /**
     * 试件编号6
     */
    @NotBlank(message = "试件编号6不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shijbh6;

    /**
     * 连接件抗拉荷载实测值6(kN)
     */
    @NotBlank(message = "连接件抗拉荷载实测值6(kN)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiszb6;

    /**
     * 连接件抗拉强度实测值6(MPa)
     */
    @NotBlank(message = "连接件抗拉强度实测值6(MPa)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String qiangdscz6;

    /**
     * 断裂特征6
     */
    @NotBlank(message = "断裂特征6不能为空", groups = { AddGroup.class, EditGroup.class })
    private String daunltz6;

    /**
     * 断裂位置6(mm)
     */
    @NotBlank(message = "断裂位置6(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String duanlwz6;

    /**
     * 结果判定6
     */
    @NotBlank(message = "结果判定6不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiegpd6;

    /**
     * 试件编号7
     */
    @NotBlank(message = "试件编号7不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shijbh7;

    /**
     * 钢筋直径7(mm)
     */
    @NotBlank(message = "钢筋直径7(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String zhij7;

    /**
     * 钢筋截面积7(mm²)
     */
    @NotBlank(message = "钢筋截面积7(mm²)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiemj7;

    /**
     * 连接件抗拉荷载实测值7(kN)
     */
    @NotBlank(message = "连接件抗拉荷载实测值7(kN)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiszb7;

    /**
     * 连接件抗拉强度实测值7(MPa)
     */
    @NotBlank(message = "连接件抗拉强度实测值7(MPa)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String qiangdscz7;

    /**
     * 断裂特征7
     */
    @NotBlank(message = "断裂特征7不能为空", groups = { AddGroup.class, EditGroup.class })
    private String daunltz7;

    /**
     * 断裂位置7(mm)
     */
    @NotBlank(message = "断裂位置7(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String duanlwz7;

    /**
     * 结果判定7
     */
    @NotBlank(message = "结果判定7不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiegpd7;

    /**
     * 试件编号8
     */
    @NotBlank(message = "试件编号8不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shijbh8;

    /**
     * 连接件抗拉荷载实测值8(kN)
     */
    @NotBlank(message = "连接件抗拉荷载实测值8(kN)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiszb8;

    /**
     * 连接件抗拉强度实测值8(MPa)
     */
    @NotBlank(message = "连接件抗拉强度实测值8(MPa)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String qiangdscz8;

    /**
     * 断裂特征8
     */
    @NotBlank(message = "断裂特征8不能为空", groups = { AddGroup.class, EditGroup.class })
    private String daunltz8;

    /**
     * 断裂位置8(mm)
     */
    @NotBlank(message = "断裂位置8(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String duanlwz8;

    /**
     * 结果判定8
     */
    @NotBlank(message = "结果判定8不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiegpd8;

    /**
     * 试件编号9
     */
    @NotBlank(message = "试件编号9不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shijbh9;

    /**
     * 连接件抗拉荷载实测值9(kN)
     */
    @NotBlank(message = "连接件抗拉荷载实测值9(kN)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiszb9;

    /**
     * 连接件抗拉强度实测值9(MPa)
     */
    @NotBlank(message = "连接件抗拉强度实测值9(MPa)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String qiangdscz9;

    /**
     * 断裂特征9
     */
    @NotBlank(message = "断裂特征9不能为空", groups = { AddGroup.class, EditGroup.class })
    private String daunltz9;

    /**
     * 断裂位置9(mm)
     */
    @NotBlank(message = "断裂位置9(mm)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String duanlwz9;

    /**
     * 结果判定9
     */
    @NotBlank(message = "结果判定9不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiegpd9;

    /**
     * 检测结论
     */
    @NotBlank(message = "检测结论不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancjl;

    /**
     * 附加声明
     */
    @NotBlank(message = "附加声明不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fujsm;

    /**
     * 设备ids
     */
    @NotBlank(message = "设备ids不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shebIds;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = { AddGroup.class, EditGroup.class })
    private String bgFlag;

    /**
     * 检测
     */
    @NotBlank(message = "检测不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jianc;

    /**
     * 记录
     */
    @NotBlank(message = "记录不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jil;

    /**
     * 复核
     */
    @NotBlank(message = "复核不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fuh;

    /**
     * 日期
     */
    @NotBlank(message = "日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private String riq;

    /**
     * 详细
     */
    List<TgsybgBaDetailVo> baDetailVos;
}
